<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../../style.css" type="text/css" media="screen">
<link rel="stylesheet" href="../../../../print.css" type="text/css" media="print">
<meta content="RPCService,org.opensocial.client.features.RPCService,isListening,serviceName,addServiceHandler,register,unregister" name="keywords">
<title>org.opensocial.client.features.RPCService</title>
</head>
<body>
<script type="text/javascript" language="javascript" src="../../../../asdoc.js"></script><script type="text/javascript" language="javascript" src="../../../../cookies.js"></script><script type="text/javascript" language="javascript">
<!--
				asdocTitle = 'RPCService - OpenSocial Actionscript 3.0 Client Library Documentation';
				var baseRef = '../../../../';
				window.onload = configPage;
			--></script>
<table style="display:none" id="titleTable" cellspacing="0" cellpadding="0" class="titleTable">
<tr>
<td align="left" class="titleTableTitle">OpenSocial Actionscript Client Library</td><td align="right" class="titleTableTopNav"><a onclick="loadClassListFrame('../../../../all-classes.html')" href="../../../../package-summary.html">All&nbsp;Packages</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../all-classes.html')" href="../../../../class-summary.html">All&nbsp;Classes</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../index-list.html')" href="../../../../all-index-A.html">Index</a>&nbsp;|&nbsp;<a href="../../../../index.html?org/opensocial/client/features/RPCService.html&amp;org/opensocial/client/features/class-list.html" id="framesLink1">Frames</a><a onclick="parent.location=document.location" href="" style="display:none" id="noFramesLink1">No&nbsp;Frames</a></td><td rowspan="3" align="right" class="titleTableLogo"><img alt="Adobe Logo" title="Adobe Logo" class="logoImage" src="../../../../images/logo.jpg"></td>
</tr>
<tr class="titleTableRow2">
<td align="left" id="subTitle" class="titleTableSubTitle">Class&nbsp;RPCService</td><td align="right" id="subNav" class="titleTableSubNav"><a href="#propertySummary">Properties</a>&nbsp;| <a href="#methodSummary">Methods</a>&nbsp;| <a href="#eventSummary">Events</a></td>
</tr>
<tr class="titleTableRow3">
<td colspan="2">&nbsp;</td>
</tr>
</table>
<script type="text/javascript" language="javascript">
<!--
if (!isEclipse() || window.name != ECLIPSE_FRAME_NAME) {titleBar_setSubTitle("Class RPCService"); titleBar_setSubNav(false,true,false,false,true,false,true,false,false,false,false,false,false,false);}
--></script>
<div class="MainContent">
<table cellspacing="0" cellpadding="0" class="classHeaderTable">
<tr>
<td class="classHeaderTableLabel">Package</td><td><a onclick="javascript:loadClassListFrame('class-list.html')" href="package-detail.html">org.opensocial.client.features</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Class</td><td class="classSignature">public class RPCService</td>
</tr>
<tr>
<td class="classHeaderTableLabel">Inheritance</td><td class="inheritanceList">RPCService <img class="inheritArrow" alt="Inheritance" title="Inheritance" src="../../../../images/inherit-arrow.gif"> flash.events.EventDispatcher</td>
</tr>
</table>
<p></p>
 Event dispatcher for asynchronous RPC service.
 <p>
 This service covers <code><j>gadgets.rpc.register</j></code> and 
 <code><j>gadgets.rpc.unregister</j></code> feature. 
 </p>
 
  <p>
 Here lists the example codes for registering rpc service:
 </p>
 
 <p></p>
<br>
<span class="label">Example</span>
<br> <div class='listing'><pre>
 private function registerService():void {
   // To use this, you need to make a rpc call to from a remote target, can be container or 
   // another gadget.
   var srv:RPCService = new RPCService("my-service");
   srv.register(client);
   srv.addEventListener(RPCServiceEvent.RPC_SERVICE, serviceEventHandler);
 }
 private function serviceEventHandler(event:RPCServiceEvent):void {
   logger.log(event.params);
   event.callback("my-service returned.");
 }
 </pre></div>
 
 <p></p>
<p>
<span class="classHeaderTableLabel">See also</span>
</p>
<div class="seeAlso">
<a href="RPCServiceEvent.html" target="">RPCServiceEvent</a>
<br>
<a href="http://code.google.com/apis/opensocial/docs/0.8/reference/gadgets/#gadgets.rpc.register" target="mm_external">gadgets.rpc.register</a>
<br>
<a href="http://code.google.com/apis/opensocial/docs/0.8/reference/gadgets/#gadgets.rpc.unregister" target="mm_external">gadgets.rpc.unregister</a>
</div>
<br>
<hr>
</div>
<a name="propertySummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Properties</div>
<table id="summaryTableProperty" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Property</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#isListening">isListening</a> : Boolean<div class="summaryTableDescription">[read-only]
   Indicates that this service is ready to serve.</div>
</td><td class="summaryTableOwnerCol">RPCService</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#serviceName">serviceName</a> : String<div class="summaryTableDescription">[read-only]
   Gets the registered service name.</div>
</td><td class="summaryTableOwnerCol">RPCService</td>
</tr>
</table>
</div>
<a name="methodSummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Methods</div>
<table id="summaryTableMethod" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Method</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#RPCService()">RPCService</a>(serviceName:String)</div>
<div class="summaryTableDescription">
   Constructor of this request event dispatcher.</div>
</td><td class="summaryTableOwnerCol">RPCService</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#addServiceHandler()">addServiceHandler</a>(callback:Function):<a href="../features/RPCService.html">RPCService</a>
</div>
<div class="summaryTableDescription">
   The quick short-cut for adding a callback function for the service.</div>
</td><td class="summaryTableOwnerCol">RPCService</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#register()">register</a>(client:<a href="../core/OpenSocialClient.html">OpenSocialClient</a>):<a href="../features/RPCService.html">RPCService</a>
</div>
<div class="summaryTableDescription">
   Registers this service to the client.</div>
</td><td class="summaryTableOwnerCol">RPCService</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#unregister()">unregister</a>(client:<a href="../core/OpenSocialClient.html">OpenSocialClient</a>):<a href="../features/RPCService.html">RPCService</a>
</div>
<div class="summaryTableDescription">
   Unregisters this service from the client.</div>
</td><td class="summaryTableOwnerCol">RPCService</td>
</tr>
</table>
</div>
<a name="eventSummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Events</div>
<table id="summaryTableEvent" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Event</th><th>Summary</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#event:rpcService">rpcService</a>
</div>
</td><td class="summaryTableDescription summaryTableCol">
 Dispatched when the registered rpc service get called.</td><td class="summaryTableOwnerCol">RPCService</td>
</tr>
</table>
</div>
<script type="text/javascript" language="javascript">
<!--
showHideInherited();
--></script>
<div class="MainContent">
<a name="propertyDetail"></a>
<div class="detailSectionHeader">Property detail</div>
<a name="isListening"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">isListening</td><td class="detailHeaderType">property</td>
</tr>
</table>
<div class="detailBody">
<code>isListening:Boolean</code>&nbsp;&nbsp;[read-only]<p>
   Indicates that this service is ready to serve.
   </p><span class="label">Implementation</span>
<br>
<code>&nbsp;&nbsp;&nbsp;&nbsp;public function get isListening():Boolean</code>
<br>
</div>
<a name="serviceName"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">serviceName</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>serviceName:String</code>&nbsp;&nbsp;[read-only]<p>
   Gets the registered service name.
   </p><span class="label">Implementation</span>
<br>
<code>&nbsp;&nbsp;&nbsp;&nbsp;public function get serviceName():String</code>
<br>
</div>
<a name="constructorDetail"></a>
<div class="detailSectionHeader">Constructor detail</div>
<a name="RPCService()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">RPCService</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">constructor</td>
</tr>
</table>
<div class="detailBody">
<code>public function RPCService(serviceName:String)</code><p>
   Constructor of this request event dispatcher.
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">serviceName</span>:String</code> &mdash; The service name to be registered.
   </td>
</tr>
</table>
</div>
<a name="methodDetail"></a>
<div class="detailSectionHeader">Method detail</div>
<a name="addServiceHandler()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">addServiceHandler</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td>
</tr>
</table>
<div class="detailBody">
<code>public function addServiceHandler(callback:Function):<a href="../features/RPCService.html">RPCService</a></code><p>
   The quick short-cut for adding a callback function for the service. It wraps the async
   request from event-driven style to a simple callback style.
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">callback</span>:Function</code> &mdash; The callback function
   </td>
</tr>
</table>
<p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../features/RPCService.html">RPCService</a></code> &mdash; 
                        The service instance itself.
   
                        
                     </td>
</tr>
</table>
</div>
<a name="register()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">register</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function register(client:<a href="../core/OpenSocialClient.html">OpenSocialClient</a>):<a href="../features/RPCService.html">RPCService</a></code><p>
   Registers this service to the client.
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">client</span>:<a href="../core/OpenSocialClient.html">OpenSocialClient</a></code> &mdash; The client.
   </td>
</tr>
</table>
<p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../features/RPCService.html">RPCService</a></code> &mdash; 
                        The service instance itself.
      
                        
                     </td>
</tr>
</table>
<p>
<span class="label">See also</span>
</p>
<div class="seeAlso">
<a href="http://code.google.com/apis/opensocial/docs/0.8/reference/gadgets/#gadgets.rpc.register" target="mm_external">gadgets.rpc.register</a>
</div>
</div>
<a name="unregister()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">unregister</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function unregister(client:<a href="../core/OpenSocialClient.html">OpenSocialClient</a>):<a href="../features/RPCService.html">RPCService</a></code><p>
   Unregisters this service from the client.
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">client</span>:<a href="../core/OpenSocialClient.html">OpenSocialClient</a></code></td>
</tr>
</table>
<p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../features/RPCService.html">RPCService</a></code> &mdash; 
                        The service instance itself.
      
                        
                     </td>
</tr>
</table>
<p>
<span class="label">See also</span>
</p>
<div class="seeAlso">
<a href="http://code.google.com/apis/opensocial/docs/0.8/reference/gadgets/#gadgets.rpc.unregister" target="mm_external">gadgets.rpc.unregister</a>
</div>
</div>
<div class="detailSectionHeader">Event detail</div>
<a name="event:rpcService"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">rpcService</td><td class="detailHeaderType">event&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<span class="label">Event object type: </span><a href=""><code>org.opensocial.client.features.RPCServiceEvent.RPC_SERVICE</code></a>
<br>
<p></p><p>
 Dispatched when the registered rpc service get called. It carries the calling arguments and 
 the function to callback.
 </p></div>
<br>
<br>
<hr>
<br>
<p></p>
<center class="copyright">2010 OpenSocial</center>
</div>
</body>
</html>
<!--2010 OpenSocial-->
